<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>js内建对象数组</title>
</head>
<body>

<!--
       变量   计算机内存中一段内存空间
       数组  在计算机内存中一段连续的内存空间  可以存储多个值  数据容器
       数组创建的方式:
         1.Array()
         2.[]   字面量   数组
-->

<script>
    // 初始化数组的同时 将数组中元素一并初始化
    var arr3 = new Array(1, 2, 3, 4, 5)
    console.log(arr3)

    //1. 通过Array函数创建数组  空数组
    // var arr = new Array()
    // 参数 3  表示数组初始化的空间长度
    var arr = new Array(3)
    console.log(arr)
    // 添加元素到数组   索引 0  1  2  3  数组名[index] = 值
    arr[0] = 'admin'
    arr[1] = 'super'
    arr[2] = 'user'
    arr[3] = 'xiaoming'
    console.log(arr)
    // 通过索引访问数组中的元素
    console.log('--------------通过索引访问数组中的元素-------------------')
    console.log('arr[0] = ', arr[0])
    console.log('arr[1] = ', arr[1])
    console.log('arr[2] = ', arr[2])
    console.log('arr[3] = ', arr[3])

    console.log('--------------通过字面量创建数组-------------------')
    var arr2 = ['admin', 'super', 'xiaoming']
    console.log(arr2)


    console.log('--------------遍历数组中的元素 方式1  index-------------------')
    for (var i = 0; i < arr2.length; i++) {
        console.log(arr2[i])
    }

    console.log('--------------遍历数组中的元素 方式2 forEach-------------------')
    // function print_info(name){
    //     console.log(name)
    // }
    // arr2.forEach(print_info)

    // 箭头函数   参数1  遍历元素   参数2  元素索引
    arr2.forEach((value, index) => {
        console.log(value, index)
    })


    console.log('--------------遍历数组中的元素 方式3 map-------------------')
    // 在遍历同时 实现数组中元素的操作 将操作后的结果以新数组的形式返回
    var new_arr2 = arr2.map(value => value.toUpperCase())
    console.log(new_arr2)


    console.log('--------------遍历数组中的元素 方式4 for of -------------------')
    // 依次获取数组中的每个元素 赋值给 name   元素获取完毕循环结束
    for (var name of new_arr2) {
        console.log(name)
    }


</script>

</body>
</html>